//bool, Obj this, Obj other

Unit me;

me = this.AsUnit(); 
if(!me.IsValid()) return false;
if(!other.IsValid()) return false;

return true;
